﻿#include "Train.h"

class Solution {
public:
    bool isUnique(string astr) {
        int x = 0; 
        for (auto e : astr)
        {
            // 1. 字符转化为数字
            int i = e - 'a';    
            // 2. 判断字符是否已经出现
            //if (x & (1 << i)) //取末尾 i 位
            //    return false; 
            // 上下两种判断出现数字是否有重复都可以
            if (((x >> i) & 1) == 1)  //右数 i 位
                return false;
            else x |= (1 << i);  //把右数 i 位变成 1
        }
        return true;
    }
};


